package com.ruicar.afs.cloud.basic.proceeds.mq.sender;

import com.ruicar.afs.cloud.basic.proceeds.mq.fallback.SendContractInfoSuccessFallBack;
import com.ruicar.afs.cloud.common.mq.rabbit.anno.send.AfsRabbitMqClient;
import com.ruicar.afs.cloud.common.mq.rabbit.anno.send.AfsRabbitMqSender;

/**
 * <p>Description: 发送数据到归档系统</p>
 *
 * @author yaorui.zhang
 * @version 1.0
 * @date create on 2020-07-01 18:42
 */
@AfsRabbitMqClient
public interface ArchiveSender {

    /**合同激活后取消3
     * @author yaorui.zhang
     * @param entity
     */
    @AfsRabbitMqSender(serverAlias = "${com.ruicar.afs.cloud.rabbitQueue.serverAliaEams}"
            ,exchangeName = "${com.ruicar.afs.cloud.rabbitQueue.exchangeNameEams.wwcontract_flatcancel}"
            ,enableOn = "${com.ruicar.afs.cloud.rabbitQueue.exchangeNameEams.wwcontract_flatcancel}"
            ,queueName = "${com.ruicar.afs.cloud.rabbitQueue.queueNameEams.wwdocument_conflatcancel}"
            ,fallBack = SendContractInfoSuccessFallBack.class
            ,afsMessage=false)
    void sendWwcontractFlatcancel(String entity);

    /**合同结清9
     * @author yaorui.zhang
     * @param entity
     */
    @AfsRabbitMqSender(serverAlias = "${com.ruicar.afs.cloud.rabbitQueue.serverAliaEams}"
            ,exchangeName = "${com.ruicar.afs.cloud.rabbitQueue.exchangeNameEams.wwcontract_closed}"
            ,enableOn = "${com.ruicar.afs.cloud.rabbitQueue.exchangeNameEams.wwcontract_closed}"
            ,queueName = "${com.ruicar.afs.cloud.rabbitQueue.queueNameEams.wwdocument_contractcl}"
            ,fallBack = SendContractInfoSuccessFallBack.class
            ,afsMessage=false)
    void sendWwdocumentContractcl(String entity);

}
